﻿using Microsoft.AspNetCore.Mvc;

namespace PrivateTracker.Service.Application;
public interface ISysMenuService
{
    Task AddMenu(AddMenuInput input);

    Task DeleteMenu(DeleteMenuInput input);

    Task<List<string>> GetLoginPermissionList(long userId);

    Task<List<string>> GetAllPermissionList();

    Task<dynamic> GetMenu(QueryMenuInput input);

    Task<dynamic> GetMenuList([FromQuery] GetMenuListInput input);

    Task<dynamic> GetMenuTree([FromQuery] GetMenuTreeInput input);

    Task<List<string>> GetUserMenuAppCodeList(long userId);

    Task<bool> HasMenu(string appCode);

    Task<dynamic> TreeForGrant([FromQuery] TreeForGrantInput input);

    Task UpdateMenu(UpdateMenuInput input);
}